package com.ruoyi.base.domain;

import java.math.BigDecimal;
import java.util.Date;

import com.alibaba.fastjson2.annotation.JSONField;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 基本资料对象 m_basestaff
 * 
 * @author ruoyi
 * @date 2024-08-09
 */
public class MBasestaff extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 表id */
    private Long id;

    /** 工号 */
    @JsonFormat(shape = JsonFormat.Shape.STRING)//此句为问题关键相当于吧Long转换为String
    @JSONField(serializeUsing = ToStringSerializer.class) //此处标识得在序列化的时候转换为字符串
    @Excel(name = "工号")
    private Long sId;

    /** 员工姓名 */
    @Excel(name = "员工姓名")
    private String sName;

    /** 员工性别 0男 1女 2未知 */
    @Excel(name = "员工性别 0男 1女 2未知")
    private String sSex;

    /** 员工年龄 */
    @Excel(name = "员工年龄")
    private String sAge;

    /** 员工底薪 */
    @Excel(name = "员工底薪")
    private BigDecimal sBasesalary;

    /** 入职时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "入职时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date sEntrytime;

    /** 备注 */
    @Excel(name = "备注")
    private String sNotes;

    public void setId(Long id) 
    {
        this.id = id;
    }

    public Long getId() 
    {
        return id;
    }
    public void setsId(Long sId) 
    {
        this.sId = sId;
    }

    public Long getsId() 
    {
        return sId;
    }
    public void setsName(String sName) 
    {
        this.sName = sName;
    }

    public String getsName() 
    {
        return sName;
    }
    public void setsSex(String sSex) 
    {
        this.sSex = sSex;
    }

    public String getsSex() 
    {
        return sSex;
    }
    public void setsAge(String sAge) 
    {
        this.sAge = sAge;
    }

    public String getsAge() 
    {
        return sAge;
    }
    public void setsBasesalary(BigDecimal sBasesalary) 
    {
        this.sBasesalary = sBasesalary;
    }

    public BigDecimal getsBasesalary() 
    {
        return sBasesalary;
    }
    public void setsEntrytime(Date sEntrytime) 
    {
        this.sEntrytime = sEntrytime;
    }

    public Date getsEntrytime() 
    {
        return sEntrytime;
    }
    public void setsNotes(String sNotes) 
    {
        this.sNotes = sNotes;
    }

    public String getsNotes() 
    {
        return sNotes;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("sId", getsId())
            .append("sName", getsName())
            .append("sSex", getsSex())
            .append("sAge", getsAge())
            .append("sBasesalary", getsBasesalary())
            .append("sEntrytime", getsEntrytime())
            .append("sNotes", getsNotes())
            .toString();
    }
}
